Updates

Model and report changes

  1. The model incorporates estimates of community prevalence, by region and age group, from the Office of National Statistics COVID-19 Infection Survey (see Data Sources for details). These are included weekly over the last 50 days and for the age groups >4 years to inform trends in incidence that are too recent to be captured by the data on deaths.
  2. The geographical definition has been changed from the seven NHS regions (map) to the nine regions typically used in government (map). This new spatial definition more appropriately reflects the existing regional heterogeneity.
  3. Using observations of improved survival in hospitalised COVID-19 patients, we have allowed the probability of dying following infection with SARS-CoV2 (the infection-fatality rate, IFR) to gradually change over the course of June 2020, with a decrease being estimated.
  4. The modelling now accounts for a different susceptibility to infection in the under-15s, using information from literature (Viner et al, 2020) suggesting that children less likely to acquire infection when in contact with an infectious individual.

Updated findings

  1. The current estimate of the daily number of new infections occurring each day across England is 60,200 (45,800–80,000, 95% credible interval).
  2. The daily infection rate is particularly high in the North West (NW) and North East (NE) with 16,300, 6,010 new daily infections, corresponding to 223, and 226 per 100,000 population, respectively. Note that a substantial proportion of these daily infections will be asymptomatic.
  3. We predict that the number of deaths occurring daily is likely to be between 518 and 860 on the 28th January 2021.
  4. The probability of Rt exceeding 1 is 85% and 84% in the South West (SW) and NE respectively; 61% in NW; 53% in the East Midlands (EM) and lower than 14% in all the other regions.
  5. The growth rate for England is now estimated to be -0.02 (-0.04–0.00, 95% credible interval) per day. This means that, nationally, the number of infections is declining but with a high degree of regional variation. Infections are still increasing in the SW and NE, whilst plateauing in the WM and EM.
  6. London, followed by the NW and the NE continues to have the highest attack rate, that is the proportion of the population who have ever been infected, with 30%, 26% and 21% respectively. The SW continues to have the lowest attack rate at 8%.
  7. Note that the deaths data used are only very weakly informative on Rt over the last two weeks. Therefore, the estimate for current incidence, Rt and the forecast of daily numbers of deaths are likely to be subject to some revision.

Interpretation

The plots of Rt over time are showing downward trends, following a period of increased transmission from the middle of the November lockdown to around the introduction of the national Tier 4 restrictions and the beginning of the Christmas period. These result in many of the Rt values being below 1, with the exception of the SW, NE, EM and NW where the number of infections is increasing (SW, NE) or plateauing (EM, NW).

Incidence of deaths which had levelled off during the last week of November / first week of December, with some falls noted in the North East, North West, and Yorkshire & Humberside, started to climb significantly throughout December and early January in all regions. The deaths that we are currently observing will be predominantly from infections acquired pre-Christmas. The deaths, which are now at a level similar to the first wave (e.g. SE and EE) are predicted to start falling soon, once the majority of the pre-Christmas infections have been resolved.

It is now possible to estimate that the Tier 4 restriction introduced on Saturday 19th December, in combination with the school holidays and reduced movements around the Christmas period, have contributed to a downward trends in Rt and the slowing down in the growth in the number of infections in most regions. The impact of the lockdown announced on 5th January cannot yet be measured, and therefore any potential effects are excluded from the discussion of these results. Regardless, the prevalence of infection remains high and the demand on healthcare services is currently extreme, so continued restrictions are needed to lower these levels and to maintain control over transmission.

Summary

Real-time tracking of an epidemic, as data accumulate over time, is an essential component of a public health response to a new outbreak. A team of statistical modellers at the MRC Biostatistics Unit (BSU), University of Cambridge, are working to provide regular now-casts and forecasts of COVID-19 infections and deaths. This information feeds directly to the SAGE sub-group, Scientific Pandemic Influenza sub-group on Modelling (SPI-M), and to regional Public Health England (PHE) teams.

Methods

We fit a transmission model (Birrell et al. 2020) to a number of data sources (see ‘Data Sources’), to reconstruct the number of new COVID-19 infections over time in different age groups and NHS regions, estimate a measure of ongoing transmission and predict the number of new COVID-19 deaths.

Data sources

We use:

  1. Data on COVID-19 confirmed deaths from the Public Health England (PHE) line-listing. This consists of a combination of deaths notified to:
    • the Demographics Batch Service (DBS), a mechanism that allows PHE to submit a file of patient information to the National Health Service spine for tracing against the personal demographics service (PDS). PHE submit a line list of patients diagnosed with COVID-19 to DBS daily. The file is returned with a death flag and date of death updated (started 20th March, 2020).
    • NHS England, who report data from NHS trusts relating to patients who have died after admission to hospital or within emergency department settings.
    • Health Protection Teams (HPTs), resulting from a select survey created by PHE to capture deaths occurring outside of hospital settings, e.g. care homes (started 23rd March, 2020). The definition of a COVID-19 confirmed death is any death that occurs in an individual who had a lab-confirmed infection, within 60 days from the date of their most recent positive test. This definition reflects more realistically the burden of COVID-19.
  2. Data on antibody prevalence in blood samples from a PHE survey of NHS Blood Transfusion (NHSBT) donors. From early June, the NHSBT began giving a constantly declining prevalence of antibodies, making them no longer an accurate measure of cumulative infection. Consequently, these data have been curtailed at this time.
  3. Age- and region-specific estimates of community prevalence of PCR positive COVID-19 infection as derived from the COVID-19 Infection Survey of the Office for National Statistics (ONS) using the methodology of Pouwels et al., 2020.

Data are stratified into eight age groups: <1, 1-4, 5-14, 15-24, 25-44, 45-64, 65-74, 75+, and the NHS England regions (North East and Yorkshire, North West, Midlands, East of England, London, South East, South West).

  1. Published information on the the natural history of COVID-19 (Verity et al., 2020; Li et al, 2020)
  2. Information on contacts between different age groups from:
    • A Survey that describes relative rates of contacts between different age groups (Mossong et al. 2008).
    • Google Community Mobility reports, informing the changes in people’s mobility over the course of the pandemic, particularly after the March 23rd lockdown measures.
    • The ONS’ time use survey, which in conjunction with the google mobility study, allows estimation of the changing exposure to infection risk over time.
    • Data from the Department for Education describing the proportion of children currently attending school.

Epidemic summary

Current \(R_t\)

Value of \(R_t\), the average number of secondary infections due to a typical infection today.

Number of infections

## `summarise()` ungrouping output (override with `.groups` argument)

Attack rate

The percentage of a given group that has been infected.

By region

By age

## `summarise()` ungrouping output (override with `.groups` argument)

IFR

## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)

Change in infections incidence

Growth rates

## `summarise()` regrouping output by 'region' (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` regrouping output by 'region' (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)

NB: negative growth rates are rates of decline. Values are daily changes.

Region Median 95% CrI (lower) 95% CrI (upper)
England -0.02 -0.04 0.00
East of England -0.06 -0.10 -0.02
East Midlands -0.01 -0.06 0.02
London -0.09 -0.12 -0.05
North East 0.00 -0.04 0.05
North West -0.01 -0.05 0.02
South East -0.08 -0.12 -0.04
South West 0.01 -0.04 0.06
West Midlands -0.07 -0.11 -0.02
Yorkshire and The Humber -0.04 -0.08 0.00

Halving times

Halving times in days, if a region shows growth than value will be NA.

Region Median 95% CrI (lower) 95% CrI (upper)
England 28.65 16.09 221.96
East of England 10.52 6.27 30.82
East Midlands 48.83 12.21 NA
London 7.73 5.27 14.05
North East NA 17.20 NA
North West 62.78 13.91 NA
South East 8.35 5.38 17.33
South West NA 17.43 NA
West Midlands 9.75 5.79 29.10
Yorkshire and The Humber 17.75 8.12 NA

Doubling times

Doubling times in days, if a region shows decline then the value will be NA.

Region Median 95% CrI (lower) 95% CrI (upper)
England NA NA NA
East of England NA NA NA
East Midlands NA 28.76 NA
London NA NA NA
North East 144.20 15.26 NA
North West NA 29.41 NA
South East NA NA NA
South West 80.87 12.24 NA
West Midlands NA NA NA
Yorkshire and The Humber NA 193.49 NA

Change in deaths incidence

Growth rates

NB: negative growth rates are rates of decline. Values are daily changes.

Region Median 95% CrI (lower) 95% CrI (upper)
England 0.00 -0.01 0.01
East of England -0.02 -0.03 0.00
East Midlands 0.01 -0.01 0.04
London -0.03 -0.04 -0.01
North East 0.03 0.00 0.06
North West 0.02 0.00 0.04
South East -0.02 -0.04 -0.01
South West 0.03 0.00 0.06
West Midlands -0.02 -0.03 0.00
Yorkshire and The Humber -0.01 -0.02 0.02

Halving times

Halving times in days, if a region shows growth than value will be NA.

Region Median 95% CrI (lower) 95% CrI (upper)
England 313.85 75.47 NA
East of England 44.48 23.40 NA
East Midlands NA 90.52 NA
London 25.34 18.28 50.94
North East NA NA NA
North West NA NA NA
South East 28.69 19.06 84.31
South West NA 1451.03 NA
West Midlands 33.87 19.89 NA
Yorkshire and The Humber 136.65 30.73 NA

Doubling times

Doubling times in days, if a region shows decline then the value will be NA.

Region Median 95% CrI (lower) 95% CrI (upper)
England NA 121.93 NA
East of England NA 190.12 NA
East Midlands 55.23 18.54 NA
London NA NA NA
North East 26.77 12.32 1331.95
North West 35.13 16.23 2966.61
South East NA NA NA
South West 26.15 11.34 NA
West Midlands NA 1562.76 NA
Yorkshire and The Humber NA 39.56 NA

Infections and deaths

The blue lines is show when interventions have been introduced (lockdown on 23 Mar and the relaxation of measures on 11 May), and the red line shows the date these results were produced (11 Jan).

Prevalence

By region

## Registered S3 method overwritten by 'R.oo':
##   method        from       
##   throw.default R.methodsS3
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## Warning: `arrange_()` is deprecated as of dplyr 0.7.0.
## Please use `arrange()` instead.
## See vignette('programming') for more help
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_warnings()` to see where this warning was generated.

By age

## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)

Goodness-of-fit

## Got here 7
## Joining, by = c("age", "date", "region")
## `summarise()` regrouping output by 'age', 'date', 'region' (override with `.groups` argument)
## Got here 8
## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

## Warning: position_dodge requires non-overlapping x intervals

Infection incidence

By region

By age

Cumulative infections

By region

By age

Deaths incidence

By region

## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)

By age

## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)

Cumulative deaths

By region

By age

Prob \(R_t > 1\)

The figure below shows the probability that \(R_t\) is greater than 1 (ie: the number of infections is growing) in each region over time. Clicking the regions in the legend allows lines to be added or removed from the figure.

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

\(R_t\)

Copyright © MRC Biostatistics Unit, University of Cambridge